package org.jboss.errai.cdi.server;
import org.jboss.errai.bus.server.service.ErraiService;
import org.jboss.errai.bus.server.servlet.ServiceLocator;
import javax.enterprise.context.spi.CreationalContext;
import javax.enterprise.inject.spi.Bean;
import javax.enterprise.inject.spi.BeanManager;
import java.util.Set;
public class CDIServiceLocator implements ServiceLocator {
public ErraiService locateService() {
BeanManager beanManager = Util.lookupBeanManager();
Set<Bean<?>> beans = beanManager.getBeans(ErraiService.class);
Bean<?> bean = beanManager.resolve(beans);
CreationalContext<?> context = beanManager.createCreationalContext(bean);
return (ErraiService)beanManager.getReference(bean, ErraiService.class, context);
}
}